:root,
:host {
  --van-progress-height: 4px;
  --van-progress-color: var(--van-primary-color);
  --van-progress-inactive-color: var(--van-gray-5);
  --van-progress-background: var(--van-gray-3);
  --van-progress-pivot-padding: 0 5px;
  --van-progress-pivot-text-color: var(--van-white);
  --van-progress-pivot-font-size: var(--van-font-size-xs);
  --van-progress-pivot-line-height: 1.6;
  --van-progress-pivot-background: var(--van-primary-color);
}

.van-progress {
  position: relative;
  height: var(--van-progress-height);
  background: var(--van-progress-background);
  border-radius: var(--van-progress-height);

  &__portion {
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--van-progress-color);
    border-radius: inherit;
    transform-origin: 0;
    transition: all var(--van-duration-base) var(--van-ease-out);

    &--inactive {
      background: var(--van-progress-inactive-color);
    }
  }

  &__pivot {
    position: absolute;
    top: 50%;
    box-sizing: border-box;
    min-width: 3.6em;
    padding: var(--van-progress-pivot-padding);
    color: var(--van-progress-pivot-text-color);
    font-size: var(--van-progress-pivot-font-size);
    line-height: var(--van-progress-pivot-line-height);
    text-align: center;
    word-break: keep-all;
    background: var(--van-progress-pivot-background);
    border-radius: 1em;
    transition: all var(--van-duration-base) var(--van-ease-out);

    &--inactive {
      background: var(--van-progress-inactive-color);
    }
  }
}
